package top.codedance.iotp.serialPortSDK;

import top.codedance.iotp.serialPortSDK.device.gld.Gld;
import top.codedance.iotp.serialPortSDK.device.gld.YouBiDe_Gld;
import top.codedance.iotp.serialPortSDK.device.http.Agy_Vrs;
import top.codedance.iotp.serialPortSDK.device.http.Vrs;
import top.codedance.iotp.serialPortSDK.device.lighting.Seekway418X;
import top.codedance.iotp.serialPortSDK.device.opw.AoKe_Opw;
import top.codedance.iotp.serialPortSDK.device.opw.Opw;
import top.codedance.iotp.serialPortSDK.device.opw.VeederRoot_Opw;
import top.codedance.iotp.serialPortSDK.device.strongElectricity.Philips;
import top.codedance.iotp.serialPortSDK.device.weakCurrent.Osram;

/**
 * 企业设备工厂
 *
 * @Description
 * @date 2023/4/7 9:52
 */
public class EnterpriseDeviceFactory {

    /**
     * 欧司朗
     *
     * @return
     */
    public static Osram getOsram() {
        return Osram.getInstance();
    }

    /**
     * 飞利浦
     *
     * @return
     */
    public static Philips getPhilips() {
        return Philips.getInstance();
    }

    /**
     * 上海园林
     * Seekway SY-418X控制器外控协议(A1版本)
     *
     * @return
     * @Description
     * @Param null
     * @author ChenPeng
     * @date 2023/4/11 9:54
     */
    public static Seekway418X getSeekway418X() {
        return Seekway418X.getInstance();
    }

    /**
     * 奥科
     *
     * @return
     * @Description
     * @Param null
     * @author ChenPeng
     * @date 2023/4/11 9:54
     */
    public static Opw getAOKE_OPW() {
        return AoKe_Opw.getInstance();
    }

    /**
     * 维德路特
     *
     * @return top.codedance.iotp.serialPortSDK.device.opw.Opw
     * @Description
     * @author ChenPeng
     * @date 2023/4/11 9:54
     */
    public static Opw getVeederRoot_OPW() {
        return VeederRoot_Opw.getInstance();
    }

    /**
     * 优必得-KP315AU
     *
     * @return top.codedance.iotp.serialPortSDK.device.opw.Opw
     * @Description
     * @author ChenPeng
     * @date 2023/4/11 9:54
     */
    public static Gld getYOUBIDE_GLD() {
        return YouBiDe_Gld.getInstance();
    }

    /**
     * 安工院-油气回收
     *
     * @Description
     * @author ChenPeng
     * @date 2023/6/2 10:43
     */
    public static Vrs getAgy_Vrs() {
        return Agy_Vrs.getInstance();
    }

}